package example.thread;

//public class MyThread extends  Thread{//表面上看是继承线程类 这个类就能够控制时间特定
//   public void run(){//线程体
//       for(int i=0;i<10;i++){
//           System.out.println(i);
//           try {
//               this.sleep(2000);
//           } catch (InterruptedException e) {
//               e.printStackTrace();
//           }
//       }
//   }
//    public static void main(String[] args) {
//       new MyThread().start();
//    }
//}


public class MyThread implements  Runnable{//表面上看是继承线程类 这个类就能够控制时间特定
    Thread thread;
    public MyThread(){
        thread = new Thread(this);//把当前对象的使用权传递给new出来的线程类对象，而当前对象又通过成员变量拥有了线程类的控制权
    }
   public void run(){//线程体
       for(int i=0;i<10;i++){
           System.out.println(i);
           try {
               thread.sleep(1000);
           } catch (InterruptedException e) {
               e.printStackTrace();
           }
       }
   }
    public static void main(String[] args) {
       MyThread mythread = new MyThread();
        mythread.thread.start();
    }
}


class Test{
    static{
        System.out.println("1");
    }
    static int x = Test.test();
    {
        System.out.println("5");
    }
    static int test(){
        System.out.println("2");
        return 8;
    }
     public Test(){
         System.out.println("构造");
     }
     int test1(){
        System.out.println("3");
        return 1;
    }

    public static void main(String[] args) {
        System.out.println(Test.x);
    }
}